﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using AjaxControlToolkit;
using ENProyecto7;
using System.Data.Sql;
using System.Data.SqlClient;
using System.Data.SqlTypes;
using System.Configuration;

namespace WebProyectoSIETE
{
    public partial class Buscador : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            // se inicializa la vista en el multiview
            mvBuscador.ActiveViewIndex = 0;

            // se enlaza a datos el radio button list
            SqlConnection conexion = null;
            try
            {
                ENUsuario usuarioEN = new ENUsuario();
                SqlDataReader dr = usuarioEN.obtenerTipoPersonajes();

                // tratamos los resultados
                rblPersonajes.DataSource = dr;
                rblPersonajes.DataBind();
                ListItem radioButton = new ListItem("Todos","0");
                radioButton.Selected = true;
                rblPersonajes.Items.Add(radioButton);
                

                // cerramos la conexion
                //conexion.Close();
            }
            catch (Exception ex)
            {
                // generamos un error y lo mostrar al usuario
                rfvBuscador.IsValid = false;
                rfvBuscador.Text = "Error, por favor vuelva a intentarlo. ";
            }
            finally
            {
                //conexion.Close();
            }
        }

        protected void buscar_Click(object sender, EventArgs e)
        {
            // se enlaza a datos el gridview
            SqlConnection conexion = null;
            try
            {
                // creamos la query y la ejecutamos
                string aux="";
                if (rblPersonajes.SelectedItem.Text.ToString() == "Todos")
                {
                    aux="SELECT nombreUsuario, TipoPersonaje, nivelUsuario FROM Usuario, Personaje WHERE (nombreUsuario LIKE '%"+tbBuscador.Text.ToString()+"%' and idPersonaje=personajeUsuario)";
                }
                else{
                    aux = "SELECT nombreUsuario, TipoPersonaje, nivelUsuario FROM Usuario, Personaje WHERE (nombreUsuario LIKE '%" + tbBuscador.Text.ToString() + "%' and idPersonaje=personajeUsuario and tipoPersonaje='" + rblPersonajes.SelectedItem.Text.ToString() + "')";
                }
                ENUsuario usuarioEN = new ENUsuario();
                SqlDataReader dr = usuarioEN.buscarWeb(aux);

                // tratamos los resultados

                if (dr.HasRows)
                {
                    lbResultados.Visible = false;
                    gvResultados.Visible = true;
                    gvResultados.DataSource = dr;
                    gvResultados.DataBind();
                    gvResultados.HeaderRow.Cells[0].Text = "Nombre";
                    gvResultados.HeaderRow.Cells[1].Text = "Personaje";
                    gvResultados.HeaderRow.Cells[2].Text = "Nivel";
                    lbResultados.Visible = false;
                }
                else {
                    lbResultados.Visible = true;
                    gvResultados.Visible = false;
                
                }

                // se cambia de visto en el multiview
                mvBuscador.ActiveViewIndex = 1;
            }
            catch (Exception ex)
            {
                Label1.Text = ex.ToString();
                rfvBuscador.IsValid = false;
                rfvBuscador.Text = "Error, por favor vuelva a intentarlo. ";
            }
            finally
            {
                //conexion.Close();
            }

        }

        protected void btnVolver_CLick(object sender, EventArgs e) 
        {
            Response.Redirect("~/Buscador.aspx");
        }
    }
}